session 跨域共享如何实现?分布式应用共享问题如何解决?
缓存系统 有4个常用的分别是?他们的差别?
消息队列 的实现方式有哪些?
nginx负载均衡 怎么实现?
A. nginx负载均衡的类别有哪些?
B. nginx与apache的区别?
mysql读写分离 怎么实现?
如何进行mysql性能调优?
A. 如何开启慢日志?
B. 如何进行SQL调优?
C. 哪些语句不支持索引?
swoole 有哪些通信方式?
网站安全防护 有哪些?
设计模式 有哪些?
==============重点来啦===========
说下你了解的session和COOKIE
COOKIE保存在客户端,session保存在服务器上
session的实现,需要在客户机的COOKIE上创建sesssionId进行关联
如何修改SESSION的生存时间
其实 Session 还提供了一个函数 session_set_COOKIE_params(); 来设置 Session 的生存期的,该函数必须在 session_start() 函数调用之前调用
// 保存一天
$lifeTime = 24 * 3600;
session_set_COOKIE_params($lifeTime);
session_start();
$_SESSION["admin"] = true;
session在分布式应用中的共享问题
nginx的负载方式采用:ip_hash(根据ip分配后端服务器)
将session值存入(数据库、redis、memcache),使用session_id进行关联查询。
将session值DES加密存入COOKIE中,当B服务器发现没有session,就会去检查COOKIE是否存在
session跨域共享问题
就是把session和COOKIE的domain设置为“主域”即可。可以调用一下代码解决
session_set_COOKIE_params(1800 , '/', '.mydomain.com');